package rescsa.gob.pe.informe.action;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;

import java.util.Date;
import java.util.List;

import rescsa.gob.pe.informe.bean.DetalleRequerimientoActividad;
import rescsa.gob.pe.informe.bean.IntegracionBEAN;
import rescsa.gob.pe.informe.bean.RequerimientoBen;
import rescsa.gob.pe.informe.service.InformeService;

import com.opensymphony.xwork2.ActionSupport;

@ParentPackage(value="informe")
public class BandejaIntegracionActividadesAction extends ActionSupport{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	
	InformeService  iinforme=new InformeService();
	private List<IntegracionBEAN> integracion;
	private List<DetalleRequerimientoActividad> detalleRequerimientoActividads;
	private String tipo_doc,reque_estado,soli_importancia,soli_prioridad,informe_estado;
	private  IntegracionBEAN integracionBEAN=new IntegracionBEAN();
	private String oper;
	private int id;
	private RequerimientoBen requerimientoBen=new RequerimientoBen();
	
	@Action(value="/ListaIntegracionInformeAction",results={@Result(name="success",type="json")})
	public String ListarIntegracion() throws Exception{


try {
	
	System.out.println(integracionBEAN.getSoli_prioridad() +"   Llego la prioridad");
	System.out.println(integracionBEAN.getSoli_importancia()+"   Llego la importancia");
	

	    soli_importancia=integracionBEAN.getSoli_importancia();
	    soli_prioridad=integracionBEAN.getSoli_prioridad();

	    
		integracion=iinforme.listaInformeIntegracion(soli_importancia, soli_prioridad);
		
		System.out.println("Listado de Informe");		
		
		} catch (Exception e) {
			e.printStackTrace();
			System.out.println(e);
		}
		
		return SUCCESS;
	}
	
	
	
	public String ListarIntegracionxFecha() throws Exception{


		try {

				Date fecha_inicio,fecha_fin;
				
				fecha_inicio=integracionBEAN.getFecha_inicio();
			    fecha_fin=integracionBEAN.getFecha_fin();

				integracion=iinforme.listaInformeIntegracionxFecha(fecha_inicio, fecha_fin);

				System.out.println(integracionBEAN.getFecha_inicio() +"   Llego la fecha inicio");
				System.out.println(integracionBEAN.getFecha_fin()+"   Llego la fecha fin");

				
				System.out.println("Listado de Informex Fecha");		
				
				} catch (Exception e) {
					e.printStackTrace();
					System.out.println(e);
				}
				
				return SUCCESS;
			}
	
	
	
	
	
	
	public String bandejadeIntegracionActividades() throws Exception{
		System.out.println("llega a bandeja de Integracion Actividades");
		try {
			
		    soli_importancia=integracionBEAN.getSoli_importancia();
		    soli_prioridad=integracionBEAN.getSoli_prioridad();
			

		    
				integracion=iinforme.listaInformeIntegracion
				(soli_importancia, soli_prioridad);
				
				System.out.println("Listado de Informe");		
				
				} catch (Exception e) {
					e.printStackTrace();
					System.out.println(e);
				}
				
		System.out.println("llega a bandeja de Integracion Actividades");
		return SUCCESS;
	}
	
	
	
	public String VerficiarInformeIntegracion() throws Exception{

		System.out.println("llega VerficiarInformeIntegracion");
		System.out.println("Llega ID"+requerimientoBen.getIntcodigo_Solictud_Requerimiento());
		
		requerimientoBen=iinforme.obtenerevaluarinforme(requerimientoBen.getIntcodigo_Solictud_Requerimiento());
		
		return SUCCESS;
		
		
	}

	public String AsignarActividadesPrueba() throws Exception{

		System.out.println("llega AsignarActividadesPrueba");
		System.out.println("Llega ID"+requerimientoBen.getIntcodigo_Solictud_Requerimiento());
		requerimientoBen=iinforme.obtenerevaluarinforme(requerimientoBen.getIntcodigo_Solictud_Requerimiento());
		detalleRequerimientoActividads=iinforme.obteneractividades(requerimientoBen.getIntcodigo_Solictud_Requerimiento());

		return SUCCESS;
	}
	
	
	public String ActualizarInformeIntegracion() throws Exception{

		System.out.println("llega AsignarActividadesPrueba");
		System.out.println("Llega ID "+requerimientoBen.getIntcodigo_Solictud_Requerimiento());
		System.out.println("Llega ESTADO NUEVO "+requerimientoBen.getStr_estado_informe());	
		RequerimientoBen reque=new RequerimientoBen();
		
		int solicitud_codigo;
		String estado_informe;
		solicitud_codigo=requerimientoBen.getIntcodigo_Solictud_Requerimiento();
		estado_informe=requerimientoBen.getStr_estado_informe();
		
		System.out.println("Llega " + solicitud_codigo + estado_informe);
		
		iinforme.actualizarrinformeintegracion(solicitud_codigo, estado_informe);

		return SUCCESS;
	}
	
	
	public String ActualizarActividad() throws Exception{

		System.out.println("llega AsignarActividadesPrueba");
		System.out.println("Llega ID "+requerimientoBen.getIntcodigo_Solictud_Requerimiento());
		
		int intcodigo_Solictud_Requerimiento;
		intcodigo_Solictud_Requerimiento=requerimientoBen.getIntcodigo_Solictud_Requerimiento();

		iinforme.actualizar_actividad_asignada(intcodigo_Solictud_Requerimiento);
		iinforme.actualizarRequerimientoAnalistaQA(intcodigo_Solictud_Requerimiento);
		
		System.out.println("Actualizo a estado asignado");
		System.out.println(intcodigo_Solictud_Requerimiento +"COdigo actuliza requerimiento Asignado Anallista QA");
		return SUCCESS;
	}
		
	
	public void setIntegracion(List<IntegracionBEAN> integracion) {
		this.integracion = integracion;
	}



	public List<IntegracionBEAN> getIntegracion() {
		return integracion;
	}



	public InformeService getIinforme() {
		return iinforme;
	}



	public void setIinforme(InformeService iinforme) {
		this.iinforme = iinforme;
	}



	public static long getSerialversionuid() {
		return serialVersionUID;
	}






	public String getTipo_doc() {
		return tipo_doc;
	}



	public void setTipo_doc(String tipo_doc) {
		this.tipo_doc = tipo_doc;
	}



	public String getReque_estado() {
		return reque_estado;
	}



	public void setReque_estado(String reque_estado) {
		this.reque_estado = reque_estado;
	}





	public void setIntegracionBEAN(IntegracionBEAN integracionBEAN) {
		this.integracionBEAN = integracionBEAN;
	}



	public IntegracionBEAN getIntegracionBEAN() {
		return integracionBEAN;
	}



	public String getSoli_importancia() {
		return soli_importancia;
	}



	public void setSoli_importancia(String soli_importancia) {
		this.soli_importancia = soli_importancia;
	}



	public String getSoli_prioridad() {
		return soli_prioridad;
	}



	public void setSoli_prioridad(String soli_prioridad) {
		this.soli_prioridad = soli_prioridad;
	}



	public String getInforme_estado() {
		return informe_estado;
	}



	public void setInforme_estado(String informe_estado) {
		this.informe_estado = informe_estado;
	}



	public void setOper(String oper) {
		this.oper = oper;
	}



	public String getOper() {
		return oper;
	}



	public void setId(int id) {
		this.id = id;
	}



	public int getId() {
		return id;
	}



	public void setRequerimientoBen(RequerimientoBen requerimientoBen) {
		this.requerimientoBen = requerimientoBen;
	}



	public RequerimientoBen getRequerimientoBen() {
		return requerimientoBen;
	}



	public void setDetalleRequerimientoActividads(
			List<DetalleRequerimientoActividad> detalleRequerimientoActividads) {
		this.detalleRequerimientoActividads = detalleRequerimientoActividads;
	}



	public List<DetalleRequerimientoActividad> getDetalleRequerimientoActividads() {
		return detalleRequerimientoActividads;
	}
	
	
	

}
